package com.nulldev.util.encoding.base;

import java.util.Arrays;

public class Context {
    private int ibitWorkArea;
    long lbitWorkArea;
    byte[] buffer;
    private int pos;
    int readPos;
    private boolean eof;
    private int currentLinePos;
    private int modulus;
    
    @Override
    public String toString() {
        return String.format("%s[buffer=%s, currentLinePos=%s, eof=%s, ibitWorkArea=%s, lbitWorkArea=%s, modulus=%s, pos=%s, readPos=%s]", this.getClass().getSimpleName(), Arrays.toString(this.buffer), this.getCurrentLinePos(), this.getEof(), this.getIbitWorkArea(), this.lbitWorkArea, this.getModulus(), this.getPos(), this.readPos);
    }

	public boolean getEof() {
		return eof;
	}

	public void setEof(boolean eof) {
		this.eof = eof;
	}

	public int getModulus() {
		return modulus;
	}

	public void setModulus(int modulus) {
		this.modulus = modulus;
	}

	public int getPos() {
		return pos;
	}

	public void setPos(int pos) {
		this.pos = pos;
	}

	public int getIbitWorkArea() {
		return ibitWorkArea;
	}

	public void setIbitWorkArea(int ibitWorkArea) {
		this.ibitWorkArea = ibitWorkArea;
	}

	public int getCurrentLinePos() {
		return currentLinePos;
	}

	public void setCurrentLinePos(int currentLinePos) {
		this.currentLinePos = currentLinePos;
	}

	public int posP() {
		return this.pos++;
	}
}
